package com.herui.ota.service;

import com.herui.ota.entity.DeviceNewDaily;
import com.herui.ota.pojo.vo.DeviceAreaCountVo;
import com.herui.ota.pojo.form.DeviceNewDailyFilterForm;
import com.herui.ota.pojo.vo.DeviceNewDailyStaticVo;
import org.shan.base.layer.user.service.IBaseService;

import java.util.Date;
import java.util.List;

/**
 * author name: amanda.shan
 * create time: 2023-10-26 16:51:33
 */ 
public interface DeviceNewDailyService extends IBaseService<DeviceNewDaily> {

    void addCount(String type, String area, int count);

    /**
     * 获取当天设备总数
     * @return
     */
    int getCurrentDayTotalCount();

    List<DeviceNewDailyStaticVo> getWeekDeviceNewDailyStaticVos(DeviceNewDailyFilterForm deviceNewDailyFilterForm);

    List<DeviceNewDailyStaticVo> getMonthDeviceNewDailyStaticVos(DeviceNewDailyFilterForm deviceNewDailyFilterForm);

    List<DeviceNewDailyStaticVo> getDeviceNewDailyStaticVos(Date start, Date end,
                                                            DeviceNewDailyFilterForm deviceNewDailyFilterForm);

    List<DeviceAreaCountVo> getDeviceAreaCountVos();

}

